LM35 হলো একটি সুনির্দিষ্ট এবং সহজে ব্যবহারযোগ্য তাপমাত্রা সেন্সর যা তাপমাত্রা পরিমাপ করতে ব্যবহৃত হয়। এটি সেলসিয়াস স্কেলে তাপমাত্রা পড়ে এবং সরাসরি ভোল্টেজ আউটপুট প্রদান করে, যা Arduino দিয়ে সহজে পড়া এবং প্রক্রিয়াকৃত করা যায়।
LM35 তাপমাত্রা সেন্সরটিকে Arduino বোর্ডের সাথে নিচেরভাবে সংযুক্ত করুন:
নিচে LM35 তাপমাত্রা সেন্সর থেকে ডেটা পড়ে তাপমাত্রা সিরিয়াল মনিটরে প্রিন্ট করার একটি উদাহরণ দেওয়া হলো:
void setup() {
Serial.begin(9600); // সিরিয়াল কমিউনিকেশন শুরু করা
}
void loop() {
int sensorValue = analogRead(A0); // A0 পিন থেকে এনালগ ডেটা পড়া
float voltage = sensorValue * (5.0 / 1023.0); // সেন্সর মানকে ভোল্টেজে রূপান্তর করা
float temperature = voltage * 100; // তাপমাত্রা সেলসিয়াসে রূপান্তর করা
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.println(" °C");
delay(1000); // ১ সেকেন্ড অপেক্ষা
}
analogRead(A0)
: A0 পিন থেকে ১০-বিট এনালগ মান পড়ে, যার মান ০ থেকে ১০২৩ পর্যন্ত হতে পারে।voltage = sensorValue * (5.0 / 1023.0)
: সেন্সরের মানকে ভোল্টেজে রূপান্তর করা হয়, যেখানে ৫V হলো রেফারেন্স ভোল্টেজ।temperature = voltage * 100
: LM35 সেন্সর প্রতি ডিগ্রি সেলসিয়াসে ১০ mV আউটপুট দেয়। তাই ভোল্টেজ মানকে ১০০ দিয়ে গুণ করলে তাপমাত্রা সেলসিয়াসে পাওয়া যায়।আপনি এই প্রকল্পে এলার্ম সিস্টেম যুক্ত করতে পারেন, যা নির্দিষ্ট তাপমাত্রার উপরে পৌঁছালে এলইডি জ্বলে ওঠে বা বীপ দেয়:
void setup() {
pinMode(13, OUTPUT); // পিন ১৩ কে আউটপুট হিসেবে কনফিগার করা (LED)
Serial.begin(9600);
}
void loop() {
int sensorValue = analogRead(A0);
float voltage = sensorValue * (5.0 / 1023.0);
float temperature = voltage * 100;
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.println(" °C");
if (temperature > 30) { // যদি তাপমাত্রা ৩০°C এর বেশি হয়
digitalWrite(13, HIGH); // LED অন করা
} else {
digitalWrite(13, LOW); // LED অফ করা
}
delay(1000);
}
LM35 সেন্সরের মাধ্যমে Arduino-তে তাপমাত্রা পরিমাপ করা সহজ এবং কার্যকরী। এটি তাপমাত্রা মনিটরিং, স্বয়ংক্রিয় কুলিং সিস্টেম এবং অন্যান্য IoT প্রোজেক্টের জন্য উপযুক্ত।
common.read_more